<#assign entityParam = entity?substring(0,1)?lower_case + entity?substring(1)>
<#assign tableComment = table.comment!?substring(0, table.comment!?length - 1)>
package ${repositoryPackage};

import ${package.Entity}.${entity};
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import ${superServiceClassPackage};

/**
* ${tableComment} 数据服务类
* @author ${author}
* @since ${date}
*/
public interface ${entity}Repository extends ${superServiceClass}<${entity}> {

    /**
    * 新增${tableComment}
    * @param ${entityParam} ${tableComment}参数
    */
    Integer create${entity}(${entity} ${entityParam});

    /**
    * 删除${tableComment}
    * @param ${entityParam}Id ${tableComment}ID
    */
    Integer delete${entity}(String ${entityParam}Id);

    /**
    * 更新部分${tableComment}
    * @param ${entityParam} ${tableComment}参数
    */
    Integer update${entity}Partial(${entity} ${entityParam});

    /**
    * 更新全部${tableComment}
    * @param ${entityParam} ${tableComment}参数
    */
    Integer update${entity}(${entity} ${entityParam});

    /**
    * 查询一条${tableComment}
    * @param ${entityParam}Id ${tableComment}ID
    */
    ${entity} get${entity}ById(String ${entityParam}Id);

    /**
    * 分页查询${tableComment}
    * @param ${entityParam} ${tableComment}参数
    * @param page 分页参数-第几页
    * @param size 分页参数-每页行数
    */
    Page<${entity}> get${entity}Page(${entity} ${entityParam}, Long page, Long size);

}
    